package main

/*
go 数组初始化默认为0
*/
func length(s string) int {
	if len(s) == 0 {
		return 0
	}
	var freq [256]int
	result, left, right := 0, 0, -1
	for left < len(s) {
		//0 表示没有遇到
		if right+1 < len(s) && freq[s[right+1]-'a'] == 0 {
			//第一次遇到后，变1
			freq[s[right+1]-'a']++
			right++
		} else {
			//第二次则减
			freq[s[left]-'a']--
			left++
		}
		result = max(result, right-left+1)
	}
	return result
}
func max(a, b int) int {
	if a > b {
		return a
	}
	return b
}
